// 分类模块
import { findHeadCategory } from '@/api/cate.js'
import { category } from '@/utils/constant.js'
export default {
  namespaced: true,
  state () {
    return {
      list: category.map((item, index) => ({ id: index, name: item }))
    }
  },
  mutations: {
    initList (state, payload) {
      state.list = payload
    }
  },
  actions: {
    // 获取分类列表
    async loadCateList (context) {
      const ret = await findHeadCategory()
      if (ret.result) {
        // 获取分类列表成功
        context.commit('initList', ret.result)
      }
    }
  },
  getters: {
    leftCate (state) {
      // 把二级分类截取前两个 也就是异步请求回来的数据中children数组中只要前俩个值
      return state.list.map(item => {
        // item.children = item.children.filter((tag, i) => i < 2)
        // return item
        // 防止影响原始的list数据（顶部导航分类也需要二级分类）
        return {
          ...item,
          // children: item.children && item.children.filter((tag, i) => i < 2)使用filter过滤掉不需要的数据,只要索引小于2的前俩条数据
          children: item.children && item.children.slice(0, 2)
        }
      })
    }
  }
}
